package com.itheima.reggie.common;
/**
 * 基于ThreadLocal封装工具类，用户保存和获取当前登录用户id
 */
public class BaseContext {
//    创建线程对象，该对象只需要生成一次，保证线程的唯一性,用static关键字
        private static ThreadLocal<Long> threadLocalEmployee = new ThreadLocal<>();
        private static ThreadLocal<Long> threadLocalUser = new ThreadLocal<>();

    /**
     * 员工线程id
     * @param id
     */
//    假设已从过滤器那得到id，设置id，set方法
    public static void setEmployeeId(Long id){
        threadLocalEmployee.set(id);
    }

    /**
     * 设置值，用户线程id
     * @param id
     */
//    假设已从过滤器那得到id，设置id，set方法
    public static void setUserId(Long id){
        threadLocalUser.set(id);
    }

    /**
     * 获取值
     * @return
     */
//   get方法，让别人可以从这获取到这个id,员工
public static Long getCurrentIdEmployee(){
    return threadLocalEmployee.get();
}
    //   get方法，让别人可以从这获取到这个id,用户
    public static Long getCurrentIdUser(){
        return threadLocalUser.get();
    }
}
